package com.baosight.risk.api.rifi;

import com.baosight.risk.base.service.BaseService;
import com.baosight.risk.service.fltd.entity.FltdTask;
import com.baosight.risk.service.rifi.entity.RifiEvaluate;
import com.baosight.risk.service.rifi.entity.RifiRiskFinish;
import com.baosight.risk.service.rifi.vo.RifiEvaluateVO;

import com.baosight.risk.service.rifi.vo.RifiFinishVO;
import com.baosight.risk.service.riim.entity.RiimRiskImport;
import com.baosight.risk.service.riim.vo.RiimRiskImportVO;
import com.baosight.risk.service.xtzy.entity.XtzyUser;

import java.util.List;
import java.util.Map;

public interface RifiRiskFinishService extends BaseService<RifiRiskFinish> {

    /**
     * 获取根据能力测评表的数据
     */
    RifiEvaluateVO rifiEvaluate(RifiRiskFinish finish);

    /**
     * 保存能力测评
     *
     * @param rifiEvaluateVO
     * @return
     */
    Integer saveRifiEvaluate(RifiEvaluateVO rifiEvaluateVO);

    /**
     * 保存结题信息
     *
     * @param rifiFinishVO
     * @return
     */
    Integer saveRifiFinish(RifiFinishVO rifiFinishVO);

    /**
     * 根据查询风险結题列表
     */
    List<RiimRiskImport> selectList(RiimRiskImportVO riimRiskImport);

    /**
     * 根据重点风险获取结题信息
     *
     * @param riimRiskImport
     * @return
     */
    RifiFinishVO getFinishByImportId(RiimRiskImport riimRiskImport);

    /**
     * 导出word文档
     *
     * @param importId
     * @return
     */
    Map importWord(String importId);

    /**
     * 提交申请
     *
     * @param riimRiskImport
     * @throws Exception
     */
    void doSubmit(RiimRiskImport riimRiskImport) throws Exception;

    List<XtzyUser> getUser(Map<String, String> params);

    void doIssuedEvaluate(RifiRiskFinish finish);

    List<RifiRiskFinish> selectOverList(RifiRiskFinish riskFinish);

    //结题历史数据
    RifiFinishVO getRifiFinishOver(RifiRiskFinish finish);

    Map importWordList(List<String> importIds);

    List<FltdTask> selectListByIds(String[] ids);

    Map pushFinish(String finishId);
}
